package com.shop.user.atom.atomsvc;

import com.shop.common.model.InputBean;
import com.shop.common.model.ServiceBean;
import com.shop.common.model.param.user.MessageInput;
import com.shop.common.model.result.user.MessageOutput;

import java.util.List;

public interface IMessageAtomSvc {

    /**
     * @Function com.shop.user.atom.atomsvc.IMessageAtomSvc.addMessage
     * @Description //新增消息
     *
     * @param: messageInput
     * @return java.lang.Integer
     * @errorCode //
     *
     * @Author zhoulk
     * @Date 2019/5/3 19:26
     *
     **/
    Integer addMessage(MessageInput messageInput);

    /**
     * @Function com.shop.user.atom.atomsvc.IMessageAtomSvc.modeMessage
     * @Description //修改消息
     *
     * @param: messageInput
     * @return java.lang.Integer
     * @errorCode //
     *
     * @Author zhoulk
     * @Date 2019/5/3 19:26
     *
     **/
    Integer modeMessage(MessageInput messageInput);

    /**
     * @Function com.shop.user.atom.atomsvc.IMessageAtomSvc.qryMessage
     * @Description //查询消息详细
     *
     * @param: messageInput
     * @return com.shop.common.model.result.user.MessageOutput
     * @errorCode //
     *
     * @Author zhoulk
     * @Date 2019/5/3 19:27
     *
     **/
    MessageOutput qryMessage(MessageInput messageInput);

    /**
     * @Function com.shop.user.atom.atomsvc.IMessageAtomSvc.qryMessageById
     * @Description //根据消息Id查询消息
     *
     * @param: messageId
     * @return com.shop.common.model.result.user.MessageOutput
     * @errorCode //
     *
     * @Author zhoulk
     * @Date 2019/5/3 19:27
     *
     **/
    MessageOutput qryMessageById(Integer messageId);

    /**
     * @Function com.shop.user.atom.atomsvc.IMessageAtomSvc.qryMessageList
     * @Description //查询消息列表
     *
     * @param: messageInput
     * @return java.util.List<com.shop.common.model.result.user.MessageOutput>
     * @errorCode //
     *
     * @Author zhoulk
     * @Date 2019/5/3 19:27
     *
     **/
    List<MessageOutput> qryMessageList(MessageInput messageInput);

    /**
     * @Function com.shop.user.atom.atomsvc.IMessageAtomSvc.qryMessage4P
     * @Description // 分页查询消息
     *
     * @param: inputBean
     * @return com.shop.common.model.ServiceBean<java.util.List<com.shop.common.model.result.user.MessageOutput>>
     * @errorCode //
     *
     * @Author zhoulk
     * @Date 2019/5/3 19:27
     *
     **/
    ServiceBean<List<MessageOutput>> qryMessage4P(InputBean<MessageInput> inputBean);

    /**
     * @Function com.shop.user.atom.atomsvc.IMessageAtomSvc.delMessageById
     * @Description //根据消息Id删除消息
     *
     * @param: messageId
     * @return java.lang.Integer
     * @errorCode //
     *
     * @Author zhoulk
     * @Date 2019/5/3 19:27
     *
     **/
    Integer delMessageById(Integer messageId);

    /**
     * @Function com.shop.user.atom.atomsvc.IMessageAtomSvc.delMessageByCondition
     * @Description //删除消息
     *
     * @param: messageInput
     * @return java.lang.Integer
     * @errorCode //
     *
     * @Author zhoulk
     * @Date 2019/5/3 19:27
     *
     **/
    Integer delMessageByCondition(MessageInput messageInput);
}
